import { Injectable } from '@nestjs/common';

//这是一个处理密码加盐HASH和验证密码的库
import * as bcrypt from 'bcrypt';

@Injectable()
export class UtilityService {
  async hashPassword(password: string):Promise<string> {
    //生成一个盐值 用于增加哈希的案例性
    const salt = await bcrypt.genSalt();
    //使用盐值和密码生成哈希 并返回hash的结果
    return bcrypt.hash(password, salt);
  }
  async comparePassword(password: string, hash: string):Promise<boolean> {
    //使用密码和哈希进行验证
    return bcrypt.compare(password, hash);
  }
}